МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ „ЛЬВІВСЬКА ПОЛІТЕХНІКА”
Кафедра інформаційних
систем та мереж
Лабораторна робота №6
на тему
Масиви даних
Львів-2009
Мета роботи Набуття практичних навиків у роботі з масивами, особливостями їх оголошення, організації, ініціалізації та алгоритмами обробки масивів даних.
Перший рівень До кожного з Прикладів 3-6, наведених у методичних вказівках,напишіть програму, що виконує поставлене завдання, та продемонструйте особливості використання масивів. Напишіть програму, яка зчитує і виводить квадратну матрицю 4 на 4..
program laba6_11;
var
a: array [1..4,1..4] of real;
i,j :integer;
begin
for i:=1 to 4 do
for j:=1 to 4 do readln(a[i,j]);
for i:=1 to 4 do begin
for j:=1 to 4 do write (a[i,j]:8:3);
writeln;
end;
end.
program laba6_12;
var
a: array [1..12] of real;
i :integer; S : real;
begin
s:=0;
for i:=1 to 12 do readln(a[i]);
for i:=1 to 12 do s:=s+a[a];
writeln(s:8:3);
writeln;
end.
program laba6_13;
var
a: array [1..31] of real;
i :integer; s:real;
begin
for i:=1 to 31 do readln(a[i]);
for i:=1 to 4 do s:=s+a[i];
s:=s/31;
writeln (s:8:3);
writeln;
end.
program laba6_14;
var
a: array [1..31] of real;
i, :integer; max: real;
begin
for i:=1 to 31 do readln(a[i]);
Max := a[1];
for i:=1 to 31 do
if a[i] > Max then Max := a[i];
writeln (max:8:3);
writeln;
end.
program laba6_15;
var
a: array [1..30] of integer;
name: array [1..30] of string;
i :integer;
begin
for i:=1 to 30 do readln(a[i],name[i]);
for i:=1 to 30 do
if a[i] = 5 then writeln (name[i]);
writeln;
end.
Другий рівень Скласти програму, у якій описати одновимірний масив цілих чисел i ввести в нього довільні значення з клавіатури. Обробити цей масив згідно з індивідуальним завданням.
5. Найти максимальний і мінімальний елементи масиву та поміняти їх місцями.
program laba6_2;
var
a : array [1..10] of integer;
temp,i,beg,maxi,mini : integer;
Begin
for i:=1 to 10 do Read (a[i]);
beg:=a[1]; mini:=1;
for i:=1 to 10 do if beg>a[i] then
begin
beg:=a[i];
mini:=i;
end;
beg:=a[1]; maxi:=1;
for i:=1 to 10 do if beg<a[i] then
begin
beg:=a[i];
maxi:=i;
end;
temp:= a[maxi];
a[maxi]:=a[mini];
a[mini]:=temp;
for i:=1 to 10 do write (a[i]:5);
readln;
end.
Третій рівень
Випадковим чином (використати функцію Random або Random(х)) утворити масив або матрицю відповідного розміру. Виконати два завдання з номерами згідно схеми:
Завдання 1: (номер варіанта)*2-1;
Завдання 2: (номер варіанта)*2
9. Знайти суму елементів першої половини масиву Х(10).
10. Знайти найменший елемент матриці Х(4,4) і записати нулі в цю стрічку і стовпець, де він знаходиться.
program laba6_31;
var
a: array [1..10] of real;
i, :integer; S : real;
begin
s:=0
for i:=1 to 10 do readln(a[i]);
for i:=1 to 5 do s:=s+a[a];
writeln(s:8:3);
writeln;
end.
program laba6_32;
var
a: array [1..4,1..4] of real;
i,j,i0,j0 :integer; mini :real;
begin
for i:=1 to 4 do for j:=1 to 4 do readln(a[i,j]);
mini:=a[1,1]; i0:=1;j0:=1;
for i:=1 to 4 do for j:=1 to 4 do if mini>a[i,j] then
begin
mini:=a[i,j]; i0:=i; j0:=j;
end;
for i:=1 to 4 do a[i,j0]:=0;
for j:=1 to 4 do a[i0,j]:=0;
for i:=1 to 4 do begin
for j:=1 to 4 do write (a[i,j]:8:3);
end;
readln;
end.
Висновок: на лабораторній роботі набув практичних навиків у роботі з масивами, особливостями їх
оголошення, організації, ініціалізації та алгоритмами обробки масивів даних.